﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AntikCompta.Data;

namespace AntikCompta
{
    public partial class NewFraisWnd : Form
    {
        private Exercice mExercice;
        public NewFraisWnd(ref Exercice aExercice, int aMois)
        {
            InitializeComponent();
            mExercice = aExercice;
            date.Value = date.MinDate;
            cb_libelle.SelectedIndex = 0;
        }

        private void bt_ok_Click(object sender, EventArgs e)
        {
            if (ValiderFrais() == false)
                return;

            try
            {
                float somme = txt_somme.FloatValue;
                mExercice.AjouterFrais(new CaisseElement(date.Value, cb_libelle.SelectedItem.ToString(), somme, txt_commentaire.Text));
                DialogResult = DialogResult.OK;
                Close();
            }
            catch(Exception)
            {
                MessageBox.Show("La somme n'a pas un format valide");
            }
        }

        private bool ValiderFrais()
        {
            if (date.Value == date.MinDate)
            {
                MessageBox.Show("Tu n'as pas indiqué de date");
                return false;
            }
            else if (cb_libelle.SelectedIndex == 0)
            {
                MessageBox.Show("Tu n'as pas sélectionné de type de frais");
                return false;
            }
            else if (txt_somme.Text.Length <= 0)
            {
                MessageBox.Show("Tu n'as pas donné de somme");
                return false;
            }

            return true;
        }

        private void bt_annuler_Click(object sender, EventArgs e)
        {
            DialogResult = DialogResult.Cancel;
            Close();
        }
    }
}
